#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
void merge(int* nums1, int nums1Size, int m, int* nums2, int nums2Size, int n)
{
	int right = m + n - 1;
	int p1 = m-1;
	int p2 = n-1;
	while (p1 >= 0 && p2 >= 0)
	{
		if (nums1[p1] > nums2[p2])
		{
			nums1[right--] = nums1[p1--];
		}
		else
		{
			nums1[right--] = nums2[p2--];
		}
	}
	while (p2 >= 0)
	{
		nums1[right--] = nums2[p2--];
	}
}
int main()
{
	int nums1[] = { 4,7,8,0,0,0 };
	int m = 3;
	int nums1Size = m;
	int nums2[] = { 2,5,6 };
	int n = sizeof(nums2) / sizeof(nums2[0]);
	int nums2Size = n;
	merge(nums1, nums1Size, m, nums2, nums2Size, n);
	for (int i = 0; i < n + m; i++)
	{
		printf("%d ", nums1[i]);
	}
	return 0;
}